package com.xqt.inters.service.base;

import com.xqt.base.entity.BaseEntity;
import com.xqt.base.page.PageInfo;

import java.util.List;
import java.util.Map;

/**
 * Created by Administrator on 2017/3/20.
 */
public interface IBaseService<T> {

    public void add(T t) throws Exception;

    public void delete(Object... ids);

    public T queryById(Object id);

    public void updateBySelective(T t) throws Exception;

    public int queryByCount(BaseEntity entity);

    public List<T> queryByList(BaseEntity entity);
    
    public List<T> queryPageList(BaseEntity entity); 
    
    public PageInfo<T> queryPageInfo(BaseEntity entity);
    
    public PageInfo<T> selectPageListCustom(T entity,String countMethod, String sqlMethod, int pageIndex, int pageSize);
    
    public PageInfo<T> selectPageByEntity(BaseEntity entity, String countMethod, String sqlMethod);
    
    public <E,F> List<E> selectEntityList(F entity,String sqlMethod);
}
